// 事件系统，处理事件；
// 基于一种设计模式 设计处理，观察者模式，自定义你事件。
// 预定义事件，系统已经定义好的事件。
// 需要引入事件类
let EventEmiter = require('events'); //内置模块
// 实例化事件类
let myevent  = new EventEmiter();

// 1.绑定自定义事件
// on 类似 addEventListener;
let fn1 = function() {
    console.log('myevent1111');
}
let fn2 = function() {
    console.log('myevent2222');
}
// 直接绑定
myevent.on('mye1',fn1)

// myevent.on("mye1",fn2)

// 绑定事件，事件只执行一次
myevent.once('mye1',fn1);
myevent.once('mye1',fn2);

// 2. 移除事件
// 第一种方式：通过 off；
myevent.off('mye1',fn2);
// 第二种方式：
myevent.removeListeners('mye1',fn2);

// 第三种方式：移除所有的事件
myevent.removeAllListeners('mye1')